<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      const str = "abaabgfdebbaefefgfsrsbabesseeeeaa";

      //1.创建一个对象,用来保存每一个字符出现的次数
      const obj = {};

      //2. 遍历字符串的每一个字符,然后去对象中判断,如果对象中不存在,则给对象新增一个属性默认值为1,如果对象存在,则把对象的值+1
      for (let key of str) {
        obj[key] ? obj[key]++ : (obj[key] = 1);
      }
      console.log(obj);

      //3. 先初始化一个值用来保存出现最多的key,再初始化一个值用来保存出现最多key的次数
      let bigStr = "";
      let bigStrNum = 0;

      //4. 遍历对象,一个的判断
      for (let key in obj) {
        //如果当前遍历出的新值的次数 大于目前保存的次数,那你牛逼,我们跟你
        if (obj[key] > bigStrNum) {
          bigStr = key;
          bigStrNum = obj[key];
        }
      }

      console.log(bigStr, bigStrNum);
    </script>
  </body>
</html>
